Many advanced control techniques are formulated as optimization problems, typically as mathematical programming. One very successful advanced control technique is Model based Predictive Control (MPC). The MPC method is very well known in the process industry and it has been proven by many practical applications. There are MPC formulations for both linear and nonlinear systems. Nonlinear MPC requires solution of nonlinear mathematical programs in real-time which can be a challenging problem, for example due to a limitation of the computing resources, the complexity of the problem to solve, or the time available to solve it. Therefore, most of the practical applications are based on a linearity assumption or approximation. The linear MPC solutions are usually formulated as Quadratic Programming.
In the process industry, it is possible to use relatively powerful standard computers. This is not possible in many embedded applications where the embedded platform has relatively limited computational and storage resources. Therefore, more “modern” control techniques based on real-time optimization may require more computational resources than are available for such applications. Furthermore the sampling periods of embedded digital control systems can be much faster. For example, in an industrial process the sampling periods are typically at least in order of seconds while in embedded applications they often start at about 10 milliseconds. It is therefore a challenge to implement the advanced control methods that require real-time optimization for such small sampling periods.